home *** CD-ROM | disk | FTP | other *** search
/ Alpha CD-ROM Bonus Pack / Alpha CD-ROM Bonus Pack.iso / fontconn / disk1 / fontcon.ms_ / fontcon.ms
Encoding:
Text File  |  1994-03-19  |  7.5 KB  |  259 lines

  1. ' ************************************************************************
  2. ' *
  3. ' *     Project:  The Font Connection Setup
  4. ' *
  5. ' *      Module:  fontcon.mst
  6. ' *
  7. ' *     Remarks:  
  8. ' *
  9. ' *   Revisions:  
  10. ' *    0.00.00    6/15/92  cek   Second Try
  11. ' *
  12. ' *********************************************************************** 
  13.  
  14. '$INCLUDE 'setupapi.inc'
  15.  
  16. CONST SW_SHOWMAXIMIZED =  3
  17.  
  18. DECLARE FUNCTION ShowWindow LIB "user" (hwnd%, flag%) AS INTEGER
  19. DECLARE FUNCTION ShellExecute LIB "shell.dll" (hwnd%, lpOperation$, lpFile$, lpParameters$, lpDirectory$, iShowCmd% ) AS INTEGER
  20.  
  21. DECLARE SUB WritePrivateProfileString LIB "kernel" (szSec$, szKey$, szVal$, szFile$ )
  22. ''
  23. '' These functions are exported from CONXLIB.DLL
  24. ''
  25. ''BOOL WINAPI CustomerInfoDialog( HWND hwndParent, LPSTR szHelpFile, LPSTR lpszINISection, DWORD dwData2 );
  26. DECLARE FUNCTION CustomerInfoDialog LIB "CONXLIB.DLL" ( hwndParent%, szHelpFile$, lpszINISection$, dwData2& ) AS INTEGER
  27.  
  28. ''BOOL WINAPI ShippingInfoDialog( HWND hwndParent, LPSTR szHelpFile, LPSTR lpszINISection, DWORD dwData2 );
  29. DECLARE FUNCTION ShippingInfoDialog LIB "CONXLIB.DLL" ( hwndParent%, szHelpFile$, lpszINISection$, dwData2& ) AS INTEGER
  30.  
  31. ''BOOL WINAPI BillingInfoDialog ( HWND hwndParent, LPSTR szHelpFile, LPSTR lpszINISection, DWORD dwData2 );
  32. DECLARE FUNCTION BillingInfoDialog LIB "CONXLIB.DLL" ( hwndParent%, szHelpFile$, lpszINISection$, dwData2& ) AS INTEGER
  33.  
  34. ''BOOL WINAPI CommSettingsDialog( HWND hwndParent, LPSTR szHelpFile, LPSTR lpszINISection, DWORD dwData2 );
  35. DECLARE FUNCTION CommSettingsDialog LIB "CONXLIB.DLL" ( hwndParent%, szHelpFile$, lpszINISection$, dwData2& ) AS INTEGER
  36.  
  37. ''Dialog ID's
  38. CONST WELCOME       = 100
  39. CONST ASKQUIT       = 200
  40. CONST ASKQUIT2      = 201
  41. CONST DESTPATH      = 300
  42. CONST EXITFAILURE   = 400
  43. CONST EXITQUIT      = 600
  44. CONST EXITSUCCESS   = 700
  45. CONST OPTIONS       = 800
  46. CONST APPHELP       = 900
  47. CONST BADPATH       = 6400
  48.  
  49. ''Bitmap ID
  50. CONST LOGO = 1
  51.  
  52. GLOBAL DEST$        ''Default destination directory.
  53. GLOBAL OPTCUR$      ''Option selection from option dialog.
  54. GLOBAL ReadMe$      ''the readme file
  55.  
  56. DECLARE SUB Install
  57. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  58.  
  59.  
  60. INIT:
  61.     hwnd = HwndFrame()
  62.     n = ShowWindow( hwnd, SW_SHOWMAXIMIZED ) 
  63.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  64.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  65.  
  66.     SetBitmap CUIDLL$, LOGO
  67.     SetTitle "The Font Connection"
  68.  
  69.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  70.     IF szInf$ = "" THEN
  71.         szInf$ = GetSymbolValue("STF_CWDDIR") + "FONTCON.INF"
  72.     END IF
  73.     ReadInfFile szInf$
  74.  
  75.     OPTCUR$ = "1"
  76.     DEST$ = "C:\FONTCON"
  77.     ReadMe$ = "readme.WRI"
  78.  
  79. GETPATH:
  80.     ClearCopyList
  81.  
  82.     SetSymbolValue "EditTextIn", DEST$
  83.     SetSymbolValue "EditFocus", "END"
  84. GETPATHL1:
  85.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  86.     DEST$ = GetSymbolValue("EditTextOut")
  87.  
  88.     IF sz$ = "CONTINUE" THEN
  89.         IF IsDirWritable(DEST$) = 0 THEN
  90.             GOSUB BADPATH
  91.             GOTO GETPATHL1
  92.         END IF
  93.         UIPop 1
  94.     ELSEIF sz$ = "REACTIVATE" THEN
  95.         GOTO GETPATHL1
  96.     ELSE
  97.         GOSUB ASKQUIT
  98.         GOTO GETPATH
  99.     END IF
  100.  
  101.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  102.     DATABASE$ = MAKEPATH(DEST$,"DATABASE")
  103.  
  104.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  105.     AddSectionFilesToCopyList "DATABASE", SrcDir$, DATABASE$
  106.  
  107. ''**
  108. ''** Check for free disk space
  109. ''**
  110.  
  111.     StillNeed& = GetCopyListCost("", "", "")
  112.  
  113.     IF StillNeed& > 0 THEN
  114.       i% = DoMsgBox("There is not enough disk space on the specified drive.  Please free up at least "+str$(StillNeed&)+" bytes or choose another drive and try again.", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  115.  
  116.       GOTO GETPATH
  117.     END IF
  118.  
  119.     CreateDir DEST$, cmoNone
  120.     CreateDir DATABASE$, cmoNone
  121.  
  122.     CopyFilesInCopyList
  123.  
  124. ''    ini$ = "CONXTION.INI"
  125. ''    WritePrivateProfileString "ConXSrv", "UseCN_RECEIVE", "0", ini$ 
  126.  
  127.     CreateProgmanGroup "ConnectSoft", "", cmoNone
  128.     ShowProgmanGroup   "ConnectSoft", 1, cmoNone
  129.     CreateProgmanItem  "ConnectSoft", "The Font Connection", MakePath(DEST$,"fontcon.exe"), "", cmoOverwrite
  130.     CreateProgmanItem  "ConnectSoft", "The Font Connection Help", "winhelp.exe "+MakePath(DEST$,"FCHELP.HLP"), "", cmoOverwrite
  131.     CreateProgmanItem  "ConnectSoft", "The FontConnection - Read Me", MakePath( DEST$, ReadMe$ ), "", cmoOverwrite
  132.  
  133. ' After install was complete, ask the dude for all his info by
  134. ' calling the routines in CONXLIB.DLL.
  135.  
  136.    szHelpFile$ = MakePath(DEST$,"FCHELP.HLP")
  137.  
  138. GETCUSTINFO:
  139.    IF 0 = CustomerInfoDialog( hwnd, szHelpFile$, "CONXTION.INI", 1 ) THEN
  140.         GOSUB ASKQUIT
  141.         GOTO GETCUSTINFO
  142.    END IF
  143.    
  144. GETSHIPPINGINFO:
  145.    IF 0 = ShippingInfoDialog( hwnd, szHelpFile$, "CONXTION.INI", 1 ) THEN
  146.         GOSUB ASKQUIT
  147.         GOTO GETSHIPPINGINFO
  148.    END IF
  149.    
  150. GETCOMMSETTINGS:
  151.    IF 0 = CommSettingsDialog( hwnd, szHelpFile$, "CONXTION.INI", 1 ) THEN
  152.         GOSUB ASKQUIT
  153.         GOTO GETCOMMSETTINGS
  154.    END IF
  155.    
  156. GETBILLINGINFO:
  157.    IF 0 = BillingInfoDialog( hwnd, szHelpFile$, "CONXTION.INI", 1 ) THEN
  158.         GOSUB ASKQUIT2
  159.         GOTO GETBILLINGINFO
  160.    END IF
  161.    
  162.  
  163. ' Now run The Font Connection...
  164. '
  165.  
  166.  
  167. QUIT:
  168.     ON ERROR GOTO ERRQUIT
  169.  
  170.     IF ERR = 0 THEN
  171.         dlg% = EXITSUCCESS
  172.     ELSEIF ERR = STFQUIT THEN
  173.         dlg% = EXITQUIT
  174.     ELSE
  175.         dlg% = EXITFAILURE
  176.     END IF
  177. QUITL1:
  178.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  179.     IF sz$ = "REACTIVATE" THEN
  180.         GOTO QUITL1
  181.     END IF
  182.  
  183.     IF dlg% = EXITSUCCESS THEN
  184.        sz$ = DEST$ + "\" + ReadMe$
  185.         i% = ShellExecute( NULL, NULL, sz$, NULL, DEST$, SW_SHOWMAXIMIZED )
  186.     END IF
  187.  
  188.     END
  189.  
  190. ERRQUIT:
  191.     i% = DoMsgBox("Setup sources were corrupted, call Adonis Technical Support at (800) 234-9497!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  192.     END
  193.  
  194. BADPATH:
  195.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  196.     IF sz$ = "REACTIVATE" THEN
  197.         GOTO BADPATH
  198.     END IF
  199.     UIPop 1
  200.     RETURN
  201.  
  202.  
  203.  
  204. ASKQUIT:
  205.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  206.  
  207.     IF sz$ = "EXIT" THEN
  208.         UIPopAll
  209.         ERROR STFQUIT
  210.     ELSEIF sz$ = "REACTIVATE" THEN
  211.         GOTO ASKQUIT
  212.     ELSE
  213.         UIPop 1
  214.     END IF
  215.     RETURN
  216.  
  217.  
  218. ASKQUIT2:
  219.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT2, "FQuitDlgProc", 0, "")
  220.  
  221.     IF sz$ = "EXIT" THEN
  222.         UIPopAll
  223.         ERROR STFQUIT
  224.     ELSEIF sz$ = "REACTIVATE" THEN
  225.         GOTO ASKQUIT2
  226.     ELSE
  227.         UIPop 1
  228.     END IF
  229.     RETURN
  230.  
  231.  
  232.  
  233. '**
  234. '** Purpose:
  235. '**     Appends a file name to the end of a directory path,
  236. '**     inserting a backslash character as needed.
  237. '** Arguments:
  238. '**     szDir$  - full directory path (with optional ending "\")
  239. '**     szFile$ - filename to append to directory
  240. '** Returns:
  241. '**     Resulting fully qualified path name.
  242. '*************************************************************************
  243. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  244.     IF szDir$ = "" THEN
  245.         MakePath = szFile$
  246.     ELSEIF szFile$ = "" THEN
  247.         MakePath = szDir$
  248.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  249.         MakePath = szDir$ + szFile$
  250.     ELSE
  251.         MakePath = szDir$ + "\" + szFile$
  252.     END IF
  253. END FUNCTION
  254.  
  255.  
  256. ' ************************************************************************
  257. ' * End of File: fontcon.mst
  258. ' *********************************************************************** 
  259.